المحاضرة السابعة والثامنة تمثيل المعطيات والب ارمج في نظام الحاسوب DATA AND PROGRAM REPRESENTATION IN THE COMPUTER SYSTEM 7. تمهيد Introduction كمبا سبببببببق وأشببببببرنبا فبإن نظبام الحباسببببببوب هو عببارة عن مجموعبة من البدارات اإللكترونيبة Electronic Circuits وهذه الدارات تمر بأحد وضعين ممكنين فالدارة إما أن تكون مفتوحة Open أو مغلقة Closed أي إما أن تكون بحالة توقف Off أو تشبببغيل On أو. وبالتالي يمكن تمثيل وضبببعية هذه الدارات باستخدام نظام تمثيل أساسي هو النظام الثنائي Binary System يبين الشكل )-7 ) الطبيعة الثنائية للدارات. الشكل )-7( الطبيعة الثنائية للدارات. 75
بكالم آخر يشار إلى هاتين الوضعيتين إما ب " " وإما ب " ". يطلق على الوضعية وفق مصطلحات الحاسوب التسمية " ب ت " Bit وهي مشتقة من العبارة.Binary Digit تقوم الحواسبببببيب في كل معالجاتها وحسببببباباتها بتمثيل البرامج والمعطيات على شبببببكل بتات وبالتالي يمكن اعتبار هذين الرمزين يشكالن اللغة األم للحاسوب.Computer native Tongue تنظم المعطيات في سالسل ذات طول ثابت تسمى كلمات Words وهي تمثل الوحدة األساسية في تخزين ومعالجة المعلومات في الحاسوب ويحدد طول الكلمة بحسب المكونات المادية للحاسوب. في بدايات الحاسببوب اعتمدت كلمة بطول 6 خانات ثنائية )بتات( وهي تعطي 64 رقما مختلفا فكانت كافية لتمثيل 6 حرفا من الحروف اإلنكليزية و أرقام عشرية إضافة إلى عالمات الترقيم والرموز الح سابية. حديثا تستخدم كلمة من ثمانية خانات ثنائية لتشكيل ما يسمى بالبايت.Byte بالطبع ال يتكلم الناس هذه اللغة الثنائية. بل يتواصبلون بلغة طبيعية منطوقة ومسبموعة ومرئية وبالتالي لكي يتفاعلوا مع الحاسوب يجب أن تترجم مخاطبتهم له إلى الشكل الثنائي والعكس صحيح. إن عملية الترجمة هذه تدعى عملية الترميز Coding وتعني تحويل المعلومات المراد معالجتها إلى كلمات مؤلفة من الخانات الثنائية. ومع أن الترميز يجري على كلمة من 8 خانات ثنائية فإن الحواسبببيب تسبببتخدم كلمات أطوالها من مضاعفات العدد 8 مثل 64. 3 6 8 يختلف تمثيل المعطيات والبرامج وفقا لطبيعة المعلومة المراد تمثيلها. فالبيانات النصببببببية Text Data )كاألرقام والمحارف والرموز الخاصبببة( يتم تمثيلها باسبببتخدام أنظمة تشبببفير Coding Systems معتمدة على المفهوم الثنائي ونظم العد. 76
يبين الشكل )-7( طبيعة هذه العملية. الشكل )-7( - عملية التخاطب بين المستخدم وطرفيات الحاسوب ومن أمثلتها التي سنتطرق إليها.EBCDIC ASCII بينما البرامج تمثل باستخدام شيفرة (code( تدعى لغة اآللة.Machine Language أما البيانات غير النصييييييية Non-Text Data )كالصييييييور والصوت والفديو( فتمثل بطرق أخرى مختلفة. 7. تمثيل المعطيات النصية Text Data Representation 7.. تمثيل األرقام ونظم العد Numbering Systems نظام العد بالتعريف المبسببببط هو عبارة عن طريقة لتمثيل األرقام حيث يتم تمثيل كل رقم بتركيب رموز النظام. إن النظام الذي نستخدمه بشكل شائع يدعى بالنظام العشري Decimal أو النظام ذو األساس عشرة Base. System وقد سبببمي بهذا االسبببم ألنه يسبببتخدم عشبببرة رموز في تمثيل أي رقم ممكن )األعداد من وحتى.) 9 إن أنظمة الحواسيب يمكنها أن تنفذ العمليات الحسابية وتنقل البيانات بشكل أسرع بآالف المرات باستخدام النظام الثنائي Binary أو النظام ذو األساس اثنان ).)Base إذا بوجه عام يميز نظام العد بما يلي: 77
ح ث: أساس ( B Base) ي B عدد صحيح موجب أكبر من الصفر. مجموعة الرموز ) S (:حيث },,..,B-,B- S= { عندها يمكن التعبير عن أ ي عدد صحيح موجب بالشكل: X i S X X حيث ويحقق العالقة: X n i n n. B X. B... X. B X B i X i B حيث n تمثل عدد أرقام العدد X مطروحا منه واحد. n n. نظام العد العشري Decimal Numbering System انسجاما مع التعريف السابق فإن لنظام العد العشري أساسا هو =B. ويمتلك عشرة 7.. رموز أساسية هي:{ S={,,,9. إن مكان توضع الرمز في الرقم مهم جدا فمثال 89 تختلف عن 98 )نفس الرموز ولكن بترتيب مختلف(. إذن لكل موقع وزنا وهو عبارة عن أساس النظام ( يأ ( مرفوعا إلى أس يتم تعيينه حسب الموقع بالقراءة من اليمين إلى اليسار )... إلخ (. أ العدد العشري الصحيح: إليجاد المكونات العشببرية للعدد العشببري الصببحيح نبدأ من اليسببار ونأخذ العدد اليسبباري األول ونضببربه باألساس عشرة () مرفوعة إلى قوة تساوي عدد األعداد المكونة للرقم مطروحا منها واحدا ثم نتابع إلى بقية األعداد... مثال: أوجد المكونات العشرية للعدد العشري التالي: 5833 الحل: 4 3 5833 (5 ) (8 ) (3 ) ( ) (3 ) 5 8 3 3 5 8 3 الرموز 3 4 3 األوزان = 5833 5 8 3 3 القيمة الفعلية 78
ب العدد العشري الكسري: إليجاد المكونات العشرية للعدد العشري الكسري نبدأ من اليسار ونضرب العدد األول باألساس عشرة ().49 (4.76 (7 ) ( مرفوعة إلى أس سالب يساوي مرتبة هذا العدد بعد الفاصلة العشرية. ) (6.76,.49 ) ( مثال: أوجد المكونات العشرية للعددين العشريين التاليين: ) ( 3 3 ) (9 ).7.6. 4 الحل: ).4...9 ج - إيجاد المكونات العشرية للعدد العشري المؤلف من قسمين صحيح وكسري: في هذه الحالة نوجد المكونات لكل قسم على حدة الصحيح والكسري. مثال:ليكن لدينا العددين العشريين التاليين والمطلوب إيجاد مكوناتهما العشرية 7.8, 935.76 3 7. 8 3 3 4 935. 76 (7 ) ( ) ( ) ( ) ( 7..8 (6 ) ( ) 9 3 5.7.6. ) (8 3 (9 ) (3 ) (5 ) ( ) (7 ) ( 3 4 3 ) الحل: نظام العد الثنائي Binary Numbering System يكون أساس النظام الثنائي هو =B ومجموعة رموزه هي {,}=S. كما أن وزن كل ) 7..3 رمز يمثل بالرقم مرفوعا إلى أس يحدد بحسب الموضع. لتمثيل األعداد في النظام الثنائي نميز بين الحاالت التالية: تمثيل األعداد الصبببحيحة:تمثل األعداد الصبببحيحة العشبببرية في النظام الثنائي باسبببتخدام مجموعات من الخانات الثنائية وعددها من مضبببببباعفات الثمانية أي... 64 3 6 8 إلخ. يتعلق عدد األعداد 79
الصببببببحيحة التي يمكن تمثيلها بعدد الخانات الثنائية المسببببببتخدمة. فإذا كان عدد الخانات هو n يكون عندها عدد األعداد الصحيحة الممثلة هو. n إليجاد المكافئ الثنائي لعدد عشري صحيح نتبع إحدى طريقتين: طريقة جدول التحويل بين نظامي العد العشببببري والثنائي:ويحوي هذا الجدول على التمثيل الثنائي لكل رقم من األرقام العشرية بحسب موقعه في العدد الرمز آحاد عشرات )آحاد عشرات مئات...(. مئات آالف 3 4 5 6 7 8 9 مثال:إيجاد المكافئ الثنائي للعدد 9. نأخذ التمثيل الموافق لكل رقم حسب موقعه ثم نجمع األعداد للحصول على التمثيل المطلوب. الموقع اآلحاد العشرات المكافئ الثنائي الرمز التمثيل الثنائي 9 طريقة التقسيم المتتالي وتنفذ هذه الطريقة باتباع الخوارزمية التالية: 8
نحسب باقي قسمة العدد العشري على األساس )العدد ( وتسجيل الباقي. تقسيم العدد العشري على األساس )(. تكرار الخطوات السابقة حتى يصبح ناتج عملية القسمة صفرا. ترتيب بواقي عمليات التقسيم من اليمين إلى اليسار حسب أسبقية ظهورها. مثال:إيجاد المكافئ الثنائي للعدد 9 4 9 9 العدد األساس 4 9 ناتج القسمة المكافئ الثنائي الباقي إليجاد المكافئ العشري ألي عدد ثنائي صحيح نتبع الخوارزمية التالية: نكتب أرقام العدد الثنائي في أعمدة متجاورة. نكتب أسفل كل رقم وزن موقع ذلك الرقم. نضرب كل رقم في قيمة وزن موقعه. نجمع نواتج عمليات الضرب فنحصل على المطلوب. مثال:إيجاد المكافئ العشري للعدد : الرموز 4 3 األوزان = 9 6 المكافئ العشري تمثيل األعداد الكسببرية:يتكون العدد الكسببري من جزأين األول يمثل القسببم الصببحيح من العدد الثاني يمثل القسببم الكسببري من العدد. تعلمنا سببابقا كيف نقوم بتمثيل القسببم الصببحيح وسببنرى فيما يلي كيفية تمثيل القسم الكسري. إليجاد المكافئ الثنائي لعدد عشري كسري نتبع إحدى طريقتين: 8
طريقة جداول التحويل ويستخدم فيها جدول تحويل مشابه للجدول السابق ولكن خاص بمراتب األعداد الكسرية. طريقة الضرب المتتالي وتنفذ هذه الطريقة باتباع الخوارزمية التالية: نضرب العدد الكسري باألساس ونسجل الجزء الصحيح الناتج عن عملية الضرب. نضرب الجزء الكسري من ناتج عملية الضرب السابقة باألساس نكرر هذه العمليتين حتى نحصل على جزء كسري ناتج عن عملية الضرب مساوي للصفر. نرتب األجزاء الصحيحة المأخوذة من اليسار إلى اليمين حسب أسبقية ظهورها. مالحظة:في بعض األحيان يكون عدد األرقام بعد الفاصببببلة ال نهائي أو يطول الوصببببول إلى جزء كسببري ناتج عن عملية الضببرب المتكررة باألسبباس مسبباوي للصببفر عندها نتوقف عن تكرار عملية الضرب عند مرحلة كافية للحصول على دقة تمثيل مقبولة. مثال:إيجاد المكافئ الثنائي للعدد.5 العدد األساس ناتج الضرب القسم الصحيح.5..5.5.5.5 المكافئ الثنائي. إليجاد المكافئ العشري لعدد ثنائي كسري نتبع نفس الخوارزمية السابقة مع مراعاة أن أوزان المواقع تكون من الشكل... إلخ. -3 - - مثال:إيجاد المكافئ العشري للعدد الثنائي. الرموز األوزان -5-4 -3 - -.59375 =.35.65.5 المكافئ العشري تمثيل األعداد ذات اإلشببارة numbers( Signed (:يتألف العدد المؤشببر من إشببارة ومقدار. حيث توضح اإلشارة فيما إذا كان الرقم موجبا أو سالبا. ويوضح المقدار القيمة المطلقة للرقم. في النظام 8
كمثال الثنائي يتم تمثيل الرقم المؤشبر بإضبافة خانة على يسبار الرقم بحيث يكون موجبا إذا كانت الخانة المضافة تساوي ( ( وسالبا إذا كانت تساوي ) (. 6 = -5 = )في النظام ثماني الخانات( إن لهذه الطريقة في تمثيل األعداد السالبة مساوئ عديدة أهمها وجود تمثيلين للعدد صفر ( يأ صفر موجب وصببفر سببالب( وبالتالي إلجراء مقارنة عدد ما مع الصببفر يجب إجراء مقارنة العدد المطلوب مع التمثيلين للعدد صفر مما يسبب زيادة في الزمن الالزم إلجراء العمليات الحسابية. باإلضبببببافة إلى مشببببباكل قد تحصبببببل أثناء إجراء العمليات الحسبببببابية من أهمها مشبببببكلة الطفو أو الطفحان Overflow وتعني تجاوز عدد خانات ناتج عملية ما الحد المسبببببموح به لتمثيل الناتج مما يؤدي إلى نتيجة خاطئة. سبنعتمد في التغلب على هذه المشباكل على اسبتخدام تمثيل مختلف لألعداد السبالبة باسبتخدام طريقة المتمم الثنائي والمتمم األحادي التي سيتم شرحها الحقا. 7..4 نظام العد الست عشري: System Hexadecimal Numbering بالرغم من أن الحاسببوب يعمل بالنظام الثنائي إال أن هذا النظام يعيبه الضببخامة وصببعوبة القراءة باإلضببببافة إلى احتمال الخطأ. لذلك تم اللجوء إلى النظام السببببت عشببببري )6 )Base والذي يعتبر طريقة مختصببرة لتمثيل األرقام الثنائية المخزنة في نظام الحاسببوب ويعتمد على تجميع األرقام الثنائية في وحدات رباعية وهي بدورها يتم تمثيلها برموز أخرى. 83
يسبببتخدم النظام السبببت عشبببري األسببباس 6 ورموزه هي األرقام العشبببرية من وحتى 9 باإلضبببافة إلى األحرف األبجدية,F,E,D,C,B A والتي تكافئ األرقام من وحتى 5 في النظام العشري. يبين الجدول التالي أرقام النظام الست عشري ومكافآتها الثنائية والعشرية: ست عشري ثنائي العشري ست عشري ثنائي عشري 8 8 9 9 A B 3 3 C 4 4 D 3 5 5 E 4 6 6 F 5 7 7 إليجاد المكافئ السييت عشييري ألي عدد ثنائي نقوم بذلك بشييكل مباشيير. إ نقوم بتقسيييم العدد الثنائي إلى مجموعات كل مجموعة تحوي أربعة أرقام من اليمين إلى اليسار ثم إيجاد الرمز الست عشري المكافئ لكل مجموعة. مثال:إيجاد المكافئ الست عشري للعدد الثنائي 84 3 A إليجاد المكافئ الثنائي ألي عدد ست عشري نقوم بالعملية المعاكسة تماما للعملية السابقة. مثال:المكافئ الثنائي للعدد الست عشري FA8 F A 8 إ ا فالعدد الثنائي المكافئ. إليجاد المكافئ الست عشري ألي عدد عشري نتبع نفس خوارزمية التقسيم المتتالي المشروحة سابقا مع تغيير بسيط هنا وهو أن األساس في حالتنا هذه هو 6.
مثال:إيجاد المكافئ الست عشري للعدد 966 7 966 العدد 6 6 6 األساس 7 ناتج القسمة عشري الست المكافئ 7 A E الباقي 7AE إليجاد المكافئ العشيييري ألي عدد سيييت عشيييري نتبع نفس خوارزمية التحويل من ثنائي إلى عشيييري مع تغيير بسيط هو أن األساس في حالتنا هذه هو 6. مثال:إيجاد المكافئ العشري للعدد 8A 8 A الرموز 6 6 6 األوزان 65 = 5 8 المكافئ الست عشري مالحظات: لتجنب الخلط بين األرقام من أسبباسببات مختلفة نسببتخدم الرقم األسبباس كرمز سببفلي فمثال () (59) 6 (59)... إلخ. يمكن تعميم ما رأيناه سببابقا في النظم الثنائية والعشببرية والسببت عشببرية لتوصببيف أي نظام عد من أي أسبببببباس ولالنتقال من الثنائي إلى الرباعي نجمع الثنائي من اليمين لليسببببببار كل مرتبتين في عدد ومن أجل الوصول للثماني نقسم كل ثالث مراتب وهكذا والسبب أن 4= و 8 =. 3 ونحن هنا لم نتطرق لنظم العد األخرى لعدم مالحظتها أو استخدامها من قبل نظام الحاسوب إال نادرا. 7..5 النظام العشري المرمز ثنائيا (BCD) Binary Coded Decimal يقوم النظام العشبري المرمز ثنائيا )BCD( على اسبتخدام عشبرة رموز ويمثل كل رمز في أربع خانات ثنائية كما هو الحال في النظام السبت عشبري. ولكنه يختلف عنه في أنه ال يسبتخدم األرقام التي تزيد على 9. 85
إليجاد المكافئ BCD للعدد العشبببري نقوم باسبببتبدال كل رقم عشبببري برمزه الثنائي في مجموعة من أربع خانات ثم نضع مجموعة الترميزات الرباعية بعضها إلى جانب بعض. مثال:المكافئ BCD للعدد العشري 573 هو. إليجاد المكافئ العشري للعدد BCD نتبع نفس الطريقة السابقة مع األعداد الست عشرية. 8 3 مثال: 6 7.3 العمليات الحسابية في الحاسوب: Operations Computer's Arithmetic سنركز في هذه الفقرة على العمليات الحسابية في النظام الثنائي. تتم العمليات الحسابية األساسية ألعداد النظام الثنائي بطريقة مشابهة لنظيراتها في النظام العشري المألوف بالنسبة لنا. ويمكن أن نلخص القوانين األساسية لهذه العمليات بالجدول التالي: األول العدد الثاني العدد الجمع Addition ناتج الجمع الطرح Substraction الضرب Multiplicat ion القسمة Division )Sum( الحمل )Carry( ناتج الطرح ) Sub( االستعارة Borro( )w عدم تعيين غير ممكنه ولتسهيل العمليات الحسابية سنقوم بتعريف بعض الصيغ المفيدة لتمثيل األعداد السالبة ومنها: 86 صيغة المتمم األول :يتم st Complement الحصول على هذا المتمم باستبدال كل بببببب وكل ب في الجزء الخاص بقيمة العدد وترك خانة اإلشارة كما هي. مثال: صيغة المتمم الثاني :يتم nd Complement الحصول عليها بإضافة إلى المتمم األول.
العدد العشري المكافئ الثنائي المتمم األول المتمم الثاني -53 أ جمع األعداد الثنائية: يتم جمع األعداد في نظام العد الثنائي وفق القواعد التالية: يتم ترتيب األعداد المراد جمعها تجمع الخانات المتقابلة مع إمكانية الحمل حمل )( إلى المرتبة التالية وهذا يحدث عند جمع () أو (). فعند جمع () نضع في الجواب () ثم نحمل () إلى المرتبة التالية ليتم جمعه إلى تلك المرتبة )خانة(. مثال : الحمل مثال : أوجد ناتج جمع العددين: الحمل ثانيا:طرح األعداد الثنائية:يعتمد طرح األعداد الثنائية على القواعد التالية: نظام العد العشري نظام العد الثنائي = = = = = = = * 87
:عدد سالب = * نحصل هذه النتيجة بعد استعارة () من المرتبة الخانية التالية. مثال :أجر عملية الطرح التالية: - استعارة المطروح منه المطروح - النتيجة استعارة المطروح منه المطروح النتيجة مثال :أجر عملية الطرح التالية: - - ثالثا:ضرب األعداد الثنائية:,,, 7.4 العمليات المنطقية األساسية Logical operations ب ما أن البيانات التي يتعامل معها النظام الحاسببببببوبي تكون ممثلة بالنظام الثنائي فإننا نستطيع إجراء العمليات المنطقية عليه)العمليات.. NOT OR AND إلخ (. تعتبر البوابات المنطقية هي المكون المسببببببؤول عن إجراء مثل هذه العمليات في النظام الحاسوبي. 88
إن جميع العمليات المنطقية المعقدة التي تتم ضبببمن نظام الحاسبببوب تتم باسبببتخدام دارات تركيبية مؤلفة من مجموعة من البوبات المنطقية األسبببببباسببببببية تم تجميعها ألداء غرض معين )اإلزاحة التخزين... إلخ (. اسم البوابة الرمز جدول العمل A Y البوابييية العييياكسييييييييية NOT اسم البوابة الرمز جدول العمل A B Q بوابة AND اسم البوابة الرمز جدول العمل A B Q بوابة OR 89
اسم البوابة الرمز جدول العمل A B Q بوابة NAND اسم البوابة الرمز جدول العمل A B Q بوابة NOR 7.5 تمثيل المحارف Character Representation بعد أن استعرضنا نظم األعداد المناسبة الستخدام الحاسوب نتطرق اآلن إلى الكيفية التي يتم بها ترميز البيانات من حروف وأرقام ورموز خاصة حتى يستطيع الحاسوب معالجتها. عملية الترميز )Coding( هي عملية تخصببببببيص رمز )Code( معين لكل رقم أو حرف وذلك بوضع تركيبة معينة من األرقام الثنائية بحيث ال تتشابه مع تركيبة أخرى مخصصة لحرف أو رقم آخر. هناك عدة نظم عالمية متفق عليها للترميز. سببببببنتعرض في هذه الفقرة إلى اثنين من هذه النظم هما نظام ASCII ونظام.EBCDIC 7.5. نظام الترميز ASCII يعتبر هذا النظام من أشببببهر نظم الترميز للحواسببببيب الصببببغيرة وقد تم تطويره من قبل المعهد الوطني األمريكي للمعايير ANSI( (. ويعني المصطلح :)ASCII( نظام الترميز األمريكي األساسي لتبادل المعلومات 9
.American Standard Code for Information Interchange نظام ASCII هو نظام سباعي الخانات وقد تم تطوير عدة نسخ ثمانية الخانات من هذا النظام ألن الحواسيب مصممة لتتعامل مع بيانات في حجم من 8 بت أو ما يعرف بالبايت.Byte وحتى 7 8= 7 ( وتبدأ من الرقم مجموعة رموز ASCII االعتيادية هي 8 رمز ( وهي تشمل: األرقام العشرية العادية ( 9.).) A Z( األحرف اإلنكليزية الكبيرة.) a z ( األحرف اإلنكليزية الصغيرة الرموز الخاصة )مثل % $ &... إلخ.) بعض رموز التحكم. باإلضافة إلى مجموعة الرموز االعتيادية يحوي ASCII الموسع مجموعة من الرموز اإلضافية تقع بين 8 و 55 وهي تشمل: حروف بعض اللغات األخرى )غير اإلنكليزية (. بعض رموز األشكال. بعض الرموز العلمية والحروف الالتينية مثل, γ, α,µ,... إلخ. 7.5. نظام الترميز EBCDIC ال يتمتع هذا النظام بنفس الشببببيوع الذي يتمتع به نظام. ASCII وقد تم تطويره من قبل شركة IBM ويستخدم بشكل أساسي في حواسيب IBM الكبيرة.IBM Mainframe المصببببببطلح EBCDIC مأخوذ من العبارة Extended Binary Coded Decimal Interchange Code وتعني نظام الترميز الثنائي العشببببببري الممدد لتبادل المعلومات. إن هذا النظام هو نظام ثماني الخانات وبالتالي يحوي على )56= 8 ( رمز مختلف. ويحوي جميع الحروف األبجدية الكبيرة والصببغيرة وبعض رموز التحكم. 9
7.6 تمثيل المعطيات غير النصية Non-Text Data Representation إن أنظمة التشببفير التي اسببتعرضببناها سببابقا تتركز على البيانات النصببية والتي تتألف من األرقام والحروف والرموز الخاصببة. غير أن أنواع البيانات األخرى كالبيانات الرسببومية وبيانات الصببوت وبيانات الفديو يمكن أن تمثل أيضا بالشكل الثنائي داخل نظام الحاسوب. 7.6. البيانات الرسومية Graphics Data تتألف البيانات الرسبببومية من صبببور سببباكنة ومن أكثر الطرق شبببيوعا لتخزين البيانات الرسومية هي الصور النقطية Bitmap( (. تعين الصبببببورة النقطية مئات األلوف من النقط على شببببباشبببببة العرض تدعى البكسبببببل BIXEL( (. أما ال BIXEL فهو تركيب من األصببببفار والواحدات يمثل لونا أو ظال محددا. أبسببببط نمط للصببببور النقطية هو النمط أحادي اللون Monochrome والذي يميز بين لونين:لون أمامي ولون خلفي )بشببببببكل عام األبيض.) واألسود (. الرمز يمثل اللون األبيض والرمز يمثل اللون األسود. أنظر الشكل )-3-3 يمكن تمثيل الرسببببوميات بنموذج آخر وهو تدرج الرمادي Grayscale وفي هذه الحالة ال يمثل كل Bixel باألبيض النقي أو األسود النقي وإنما بتدرجات من األلوان بينهما تصل إلى 54 تدرج. وبالتالي كل Bixel يمكن أن يمثل في أي من الحاالت البببببببببببب 56 الممكنة وبالتالي تمثل األبيض النقي و تمثل األسببببود النقي بينما و على سبببببيل المثال ما هي إال تدرجات رمادية. ذات تدرج الرمادي. حيث يمثل كل النمط األخير لتمثيل الرسوميات هو النمط الملون. يتم تشفير األلوان بشكل مشابه للرسوم Bixel بعدد من البايتات. يمكن تخزين الصور ببب 6 لون 56 لون أو 67776 لون. يخصص في صور الببب 6 لون نصف بايت لكل Bixel أما في صور الببب 56 لون يخصص بايت واحد لكل Bixel وأخيرا في صور 6.78 مليون لون تتطلب ثالثة بايتات لكل بعدد العناصر في البوصة.Bixel يعبر عدد عناصر الصورة الممثلة عن الدقة ويشار إليه بالمصطلح Resolution ويقاس.) Dots Per Inche( أي DPI الشكل )4-3( يمثل األنماط الثالثة لتمثيل الرسوميات. 9
الشكل )4-3( األنماط الثالثة لتمثيل الرسوميات. 7.6. البيانات الصوتية Audio Data تعالج الحواسبيب البيانات الصبوتية بعد تشبفيرها رقميا بطريقة تدعى الصبوت على شبكل موجة.Waveform Audio هذه الطريقة تعتمد على التقاط آالف العينات الرقمية Digital Samples من الصوت بتعاقب منتظم ومن ثم تشفير كل عينة بحسب مقدارها إلى الشكل الرقمي. كلما كان عدد العينات المأخو ة في الثانية كبيرا كلما كان الصوت الناتج أكثر جودة ونقاء. المعدل األكثر شيوعا هو 44 عينة في الثانية. 7.6.3 بيانات الفديوData Vedio بيانات الفديو هي عبارة عن بيانات رسومية متحركة. لكي تظهر الحركة وتعطي انطباعا مستمرا يجب أن تظهر بمعدل 3 إطار )Frame( في الثانية. أما اإلطار فهو عبارة عن صورة ثابتة وتمثل بالطريقة التي أشرنا إليها سابقا. 93
تمثيل الب ارمج Representing Programs 7.7 لغة اآللة Machine Language 7.7. وهي اللغة التي يتم التعامل بواسطتها بين جميع وحدات الحاسوب اآللي. وهي عبارة عن مجموعة من الكلمات المتساوية في الطول والمكونة من الرمزين صفر وواحد التي ترمز إلى العمليات التي يمكن إجراؤها ضمن نظام الحاسوب كنقل البيانات من الذاكرة إلى المسجل تحريك رزمة من البيانات من مكان آلخر إنقاص قيمة مسجل قراءة بيانات من ملف... إلخ. إن مجموعة تعليمات لغة اآللة تشببببببكل ما يسببببببمى باسببببببم مجموعة تعليمات الحاسببببببوب.Computer's Instruction set إن لكل نظام حاسوب لغته الخاصة به. يكون كل سبطر من سبطور البرنامج المكتوب بلغة اآللة مكون من جزئين:الجزء األول )األيسبر( يشبير إلى نوع العملية )طرح جمع... إلخ( والجزء الثاني )األيمن( يشببببببير إلى عناوين البيانات في ذاكرة النظام. وكال الجزئين هو عبارة عن أرقام يصببببببعب تذكرها لعدم وجود عالقة ملحوظة بين نوع العملية والرقم الممثل لها. إن من أهم مميزات لغات اآللة أنها سبببريعة التنفيذ على األجهزة الخاصبببة بها. ولكن لها الكثير من المساوئ من أهمها: صببببببعوبتها:ألن على المبرمج أن يتذكر جميع الشببببببفرات التي تعبر عن العمليات المختلفة. كما أن على المبرمج تخصيص أماكن حفظ هذه الشفرات والبيانات في الذاكرة. المستخدم. إن على المبرمج بلغة اآللة أن يعرف التفاصيل الدقيقة لجهاز الحاسوب ال يمكن تنفيذ برنامج مكتوب بلغة اآللة إال على نظام من نفس النوع. 94 7.7. آلية تنفيذ البرنامج الموضوع بلغة اآللة تنفذ تعليمات البرنامج التنفيذي المكتوب بلغة اآللة بتحكم مباشببببببر من قبل وحدة التحكم Control Unit وتتم هذه العملية بتزامن دقيق يوفره نظام نبضات الساعة الموجود ضمن نظام الحاسوب. لقد عرفنا في الفقرة السابقة أن البرنامج بلغة اآللة يتألف من سلسلة من الخطوات التي يتم عن طريقها حل مسألة معينة كل خطوة من هذه الخطوات تسمى تعليمة أو أمر وهي مكونة من جزئين:.Instruction - جزء العملية ( )Operation ويتحدد فيه نوع العملية المراد إجراؤها
- وجزء المعامالت )Operands( ويحدد فيه البيانات المراد إجراء العملية عليها أو مكان توضببببعها في الذاكرة. يبين الشكل )5-4( كيف تعمل دورة اآللة. يحتاج المعالج لمعالجة تعليمة آلة واحدة إلى دورة آلة كاملة) )Machine Cycle وتنقسم دورة اآللة إلى قسمين رئيسين:قسم األمر Instruction Part وقسم التنفيذ Execution Part الشكل )5-4( كيف تعمل دورة اآللة. دورة األمر I-cycle( (:وتدعى أحيانا دورة الجلب Fetch Cycle ويتم في هذه المرحلة مايلي: - تقوم وحدة التحكم بإحضار األمر من الذاكرة لكي تنفذه. - تقوم وحدة التحكم بتفكيك ترميز شببببببفرة األمر لكي تسببببببتطيع وحدة الحسبببببباب والمنطق )ALU( معالجته. دورة التنفيذ E-cycle( (: ويتم في هذه المرحلة - تسبببببترجع وحدة التحكم البيانات المطلوبة من الذاكرة وتأمر وحدة الحسببببباب والمنطق بتنفيذ األمر المطلوب. - يقوم المعالج بتخزين نتيجة المعالجة في الذاكرة. 95
7.8 خانة التماثل وتصحيح األخطاء: checking The Parity Bit & error قد تتعرض المعلومات الممثلة داخليا بواسطة األرقام الثنائية ألخطاء ناتجة عن تبادل هذه المعلومات بين المكونات أو نتيجة أعطال في التجهيزات. تتمثل هذه األخطاء بتغيير خانة ثنائية أو عدة خانات من إلى وبالعكس..F لنفرض على سببيل المثال أنك تضبغط على المفتاح B على لوحة المفاتيح إذا كان محول لوحة المفاتيح يدعم شبببيفرة ASCII فسبببوف ينقل البايت إلى المعالج. أحيانا يحصبببل خطأ ما أثناء التحويل ويتلقى المعالج الرسالة التالية وبالتالي يفسر المعالج هذا البايت على أنه الحرف لكي يتمكن المعالج من إصببالح الخطأ الناجم عن النقل يتم إضببافة خانة إضببافية للتدقيق. هذه الخانة تدعى خانة التماثل Parity Bit وهي الخانة ذات القيمة العليا في البايت Most Significant ) (MSB.Bit إن هذه الخانة قد تحوي إما وإما لتجبر مجموع الواحدات في خانات البببببببببايت ليكون عدد زوجي أو عدد فردي. في حال كان العدد زوجيا يدعى التماثل باسببببببم التماثل الزوجي Even Parity أما إذا كان فرديا فيدعى بالتماثل الفردي.Odd Parity 96